Networks for connecting together a number of computers and associated electronic devices are now commonplace in a wide variety of environments. Networks may vary in size, from a local area network (LAN) consisting of a few computers and related devices, to a wide area network (WAN) which interconnects computers and LANs that are geographically dispersed. An internetwork, in turn, is the joining of multiple computer networks, both similar and dissimilar, by means of gateways or routers that facilitate data transfers and conversion from various networks. A well-known abbreviation for internetwork is "Internet." As currently understood, the capitalized term Internet refers to the collection of networks and routers that use a "Transmission Control Protocol/Internet Protocol (TCP/IP) to communicate with one another.
Virtually any electronic device or computer equipped with the necessary hardware can be connected to a LAN or a WAN and hence, to the Internet. Each computer and device that is connected to the Internet has an Internet Protocol address ("IP address") that uniquely identifies the computer or device from all other computers and devices on the Internet. An IP address is comprised of four groups of numbers separated by decimals, for example, 165.113.245.2. Each computer connected to the Internet also has a computer name or "host name" that is assigned to the computer at its particular IP address. For example, the name "abc" can be assigned to a computer having the IP address 165.113.245.2. In turn, the computer name is embedded in what is known as a "fully qualified domain name" that uniquely identifies a computer connected to the Internet in a more user friendly manner. In its most generic form, a fully qualified domain name consists of three elements: The host name, the assigned domain name, and a top-level domain name. For example, a computer connected to the Internet may have the fully qualified domain name "abc.sequeltech.com", which includes the host name ("abc"), the domain name ("sequeltech"), and the and the top-level domain name ("com").
Fully qualified domain names are translated into numeric IP addresses and vice versa by domain name servers connected to the Internet. A domain name server is a computer containing software capable of responding to domain name inquiries and accessible on a full-time basis to other computers on the Internet. However, domain name servers do not maintain or keep track of individual computer name to IP address assignments within those networks making up the Internet. This function is provided by a domain controller server, i.e., a computer connected to a network that contains the software capable of keeping track of the computer name and IP address of each computer connected to the network.
In the traditional network environment, network users are statically assigned or "mapped" to a particular computer at a particular IP address, computer name or domain name using various application program interfaces. Consequently, network resources, such as electronic mail, peripheral devices, CD-ROM libraries, etc. are made available, assigned or applied to users at the computers to which the users are assigned or mapped. However, if a user utilizes a computer connected to the network to which the user is not assigned or mapped, the network resources specifically intended for that user are not made available, assigned or applied to that computer. Rather, the network resources intended for that user remain with the computer to which the user is formally assigned, and the network resources applied to the computer currently being utilized by the user are those made available, assigned and applied to another user that is formally assigned to that computer.
Accordingly, a method and apparatus for resolving network users to network computers is needed so that as users log into and out of different computers connected to the network, the network resources intended for that user are applied to that user. The method and apparatus should be able to identify all computers currently being utilized by a specified user and identify which user is currently utilizing which computer. Further, the method and apparatus should keep track of which IP address is currently assigned to which computer. The method and apparatus should also allow for both dynamic and static resolution of network users to network computers. More specifically, the method and apparatus should provide for static or "permanent" user-to-computer and/or computer-to-IP address assignments as well as dynamic user-to-computer and/or computer-to-IP address assignments which change as users log into and out of computers connected to the network or as IP addresses change. Finally, the method and apparatus should be completely transparent to the users of the network. As described in the following, the present invention provides a method and apparatus that meet these criteria.